Security News
The Risks of Misguided Research in Supply Chain Security
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
http-status-codes
Advanced tools
Constants enumerating the HTTP status codes. Based on the Java Apache HttpStatus API.
The http-status-codes npm package provides an easy-to-use collection of HTTP status codes and reason phrases, which are useful when writing server-side code. It helps developers to avoid hardcoding numeric status codes and instead use descriptive constants, improving code readability and maintainability.
Status Code Enumeration
Provides an enumeration of HTTP status codes, allowing developers to use descriptive constants instead of numeric codes.
const { StatusCodes } = require('http-status-codes');
console.log(StatusCodes.OK); // 200
console.log(StatusCodes.NOT_FOUND); // 404
console.log(StatusCodes.INTERNAL_SERVER_ERROR); // 500
Reason Phrase Lookup
Allows developers to get the standard reason phrase for a given HTTP status code.
const { getReasonPhrase } = require('http-status-codes');
console.log(getReasonPhrase(200)); // 'OK'
console.log(getReasonPhrase(404)); // 'Not Found'
console.log(getReasonPhrase(500)); // 'Internal Server Error'
Status Code Lookup
Enables developers to retrieve the numeric status code for a given reason phrase.
const { getStatusCode } = require('http-status-codes');
console.log(getStatusCode('OK')); // 200
console.log(getStatusCode('Not Found')); // 404
console.log(getStatusCode('Internal Server Error')); // 500
A utility to interact with HTTP status codes. It provides similar functionality to http-status-codes, allowing for both numeric code and text message retrieval. It also supports looking up codes based on the message.
Another simple package that provides HTTP status codes and messages. It is similar to http-status-codes but with a smaller footprint, offering a basic mapping between codes and their default messages.
Constants enumerating the HTTP status codes. Based on the Java Apache HttpStatus API.
All status codes defined in RFC1945 (HTTP/1.0), RFC2616 (HTTP/1.1), RFC2518 (WebDAV), RFC6585 (Additional HTTP Status Codes), and RFC7538 (Permanent Redirect) are supported.
Completely library agnostic. No dependencies.
npm install http-status-codes --save
var HttpStatus = require('http-status-codes');
response
.status(HttpStatus.OK)
.send('ok');
response
.status(HttpStatus.INTERNAL_SERVER_ERROR)
.send({
error: HttpStatus.getStatusText(HttpStatus.INTERNAL_SERVER_ERROR)
});
response
.status(HttpStatus.getStatusCode('Server Error'))
.send({
error: 'Server Error'
});
Constant | Code | Status Text |
---|---|---|
ACCEPTED | 202 | Accepted |
BAD_GATEWAY | 502 | Bad Gateway |
BAD_REQUEST | 400 | Bad Request |
CONFLICT | 409 | Conflict |
CONTINUE | 100 | Continue |
CREATED | 201 | Created |
EXPECTATION_FAILED | 417 | Expectation Failed |
FAILED_DEPENDENCY | 424 | Failed Dependency |
FORBIDDEN | 403 | Forbidden |
GATEWAY_TIMEOUT | 504 | Gateway Timeout |
GONE | 410 | Gone |
HTTP_VERSION_NOT_SUPPORTED | 505 | HTTP Version Not Supported |
IM_A_TEAPOT | 418 | I'm a teapot |
INSUFFICIENT_SPACE_ON_RESOURCE | 419 | Insufficient Space on Resource |
INSUFFICIENT_STORAGE | 507 | Insufficient Storage |
INTERNAL_SERVER_ERROR | 500 | Server Error |
LENGTH_REQUIRED | 411 | Length Required |
LOCKED | 423 | Locked |
METHOD_FAILURE | 420 | Method Failure |
METHOD_NOT_ALLOWED | 405 | Method Not Allowed |
MOVED_PERMANENTLY | 301 | Moved Permanently |
MOVED_TEMPORARILY | 302 | Moved Temporarily |
MULTI_STATUS | 207 | Multi-Status |
MULTIPLE_CHOICES | 300 | Multiple Choices |
NETWORK_AUTHENTICATION_REQUIRED | 511 | Network Authentication Required |
NO_CONTENT | 204 | No Content |
NON_AUTHORITATIVE_INFORMATION | 203 | Non Authoritative Information |
NOT_ACCEPTABLE | 406 | Not Acceptable |
NOT_FOUND | 404 | Not Found |
NOT_IMPLEMENTED | 501 | Not Implemented |
NOT_MODIFIED | 304 | Not Modified |
OK | 200 | OK |
PARTIAL_CONTENT | 206 | Partial Content |
PAYMENT_REQUIRED | 402 | Payment Required |
PERMANENT_REDIRECT | 308 | Permanent Redirect |
PRECONDITION_FAILED | 412 | Precondition Failed |
PRECONDITION_REQUIRED | 428 | Precondition Required |
PROCESSING | 102 | Processing |
PROXY_AUTHENTICATION_REQUIRED | 407 | Proxy Authentication Required |
REQUEST_HEADER_FIELDS_TOO_LARGE | 431 | Request Header Fields Too Large |
REQUEST_TIMEOUT | 408 | Request Timeout |
REQUEST_TOO_LONG | 413 | Request Entity Too Large |
REQUEST_URI_TOO_LONG | 414 | Request-URI Too Long |
REQUESTED_RANGE_NOT_SATISFIABLE | 416 | Requested Range Not Satisfiable |
RESET_CONTENT | 205 | Reset Content |
SEE_OTHER | 303 | See Other |
SERVICE_UNAVAILABLE | 503 | Service Unavailable |
SWITCHING_PROTOCOLS | 101 | Switching Protocols |
TEMPORARY_REDIRECT | 307 | Temporary Redirect |
TOO_MANY_REQUESTS | 429 | Too Many Requests |
UNAUTHORIZED | 401 | Unauthorized |
UNPROCESSABLE_ENTITY | 422 | Unprocessable Entity |
UNSUPPORTED_MEDIA_TYPE | 415 | Unsupported Media Type |
USE_PROXY | 305 | Use Proxy |
There is an included definition file that adds rules for use, comments, and links to official documentation.
Option 1: Full import of package
import * as HttpStatus from 'http-status-codes'
response
.status(HttpStatus.OK)
.send('ok')
response
.status(HttpStatus.INTERNAL_SERVER_ERROR)
.send({
error: HttpStatus.getStatusText(HttpStatus.INTERNAL_SERVER_ERROR)
})
response
.status(HttpStatus.getStatusCode('Server Error'))
.send({
error: 'Server Error'
})
Option 2: Selective import
import { OK, getStatusText, getStatusCode } from 'http-status-codes'
response
.status(OK)
.send(getStatusText(OK))
response
.status(getStatusCode('Server Error')
.send('Server Error')
FAQs
Constants enumerating the HTTP status codes. Based on the Java Apache HttpStatus API.
The npm package http-status-codes receives a total of 1,180,539 weekly downloads. As such, http-status-codes popularity was classified as popular.
We found that http-status-codes demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
Research
Security News
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.